package business.coding

import domain.Center
import groovy.sql.GroovyRowResult
import org.apache.log4j.Logger
import business.ViewLogger
import business.knBase.KnBaseUtils
import business.parser.CorpWrapper
import java.util.List

/**
 * Esta clase se encarga de obtener el codigo de centros extranjeros
 * @author 53385255R
 *
 */
public class CodeForeign {
	
	private Logger _log
	
	/**
	 * Direccion completa del corp
	 */
	private CorpWrapper _corp

   public CodeForeign(CorpWrapper corp) {
		_log = Logger.getLogger("CodeForeign")
		_corp = corp
		
	}
	
	/**
	 * Obtiene el centro extranjero del corp
	 * Lo que hace es coger los segmentos de provincia y pais y buscar las palabras clave en la base de conocimiento
	 * @return
	 */
	public List<CandidateCenter> getForeignCenter() {
		
		List<CandidateCenter> codes = new ArrayList<CandidateCenter>()
		
		KnBaseUtils kn = new KnBaseUtils()
		//Obtengo los segmentos del corp
		_corp.getCountrySegments().each { foreignSegment ->
		if (!foreignSegment.isEmpty())
			kn.getForeignCodes(foreignSegment).each { 
					
					String code = it
						  CandidateCenter cenW = new CandidateCenter()
						 Center cen = new Center (code, "--", "9", "------", "--------","9")
						 ViewLogger.getInstance().info "ISO ${code}"
						 cenW.setCenter cen
						 cenW.set_context 100.0
						 
						 codes.add(cenW)
						 return
			}
		}
		return codes
	}
	
		
	
   
}

